package com.ndp.fb.util;

import org.apache.commons.lang3.RandomUtils;

import java.util.HashSet;
import java.util.Set;

/**
 * Created by infi.he on 2016/2/16.
 */
public class MathUtil {

    /**
     * 计算 $a $b 最大公约数
     *
     * @param $a
     * @param $b
     * @return
     */
    public static int gcd(int $a, int $b) {
        if ($a % $b > 0)
            return gcd($b, $a % $b);
        else
            return $b;
    }

    /**
     * 计算比例
     *
     * @param $w
     * @param $h
     * @return
     */
    public static String scale(int $w, int $h) {
        int $n = gcd($w, $h);
        return $w / $n + ":" + $h / $n;
    }

    /**
     * 从 start 到 end 之间抽取随机数 x 个，返回，不重复
     * @param start
     * @param end
     * @param size
     * @return
     */
    public static Integer [] randomInt(int start,int end,int size){
        Set<Integer> set=new HashSet<>();
        while(set.size()<=size){
            set.add(RandomUtils.nextInt(start,end));
        }
        return set.toArray(new Integer[set.size()]);
    }


}
